Automatic measurement and notification of electrical level using smartphone sensors

ABSTRACT

A personal mobile system for detecting unsafe electrical power levels. Magnetic sensors detect a magnitude of a magnetic field produced by a power line. A GPS determines the location of the detected the magnetic field. A distance from the location of the detected the magnetic field is determined. In response to determining that the magnitude of the detected magnetic field produced by the power line exceeds the stored electrical power level threshold, based on the determined distance, an alert module produces an alert on the personal mobile system.

BACKGROUND

The present invention relates generally to the field of electricalmeasurements, and more particularly to the measurement of nearbyelectrical and magnetic fields using sensors on a computing device.

As provided by the Electrical Safety Foundation International (ESFI),“Contact with Overhead Power Lines” (including direct worker contact andcontact through machines, tools, and hand-carried metallic objects) wasthe largest fatal accident category comprising 44% of all electricalfatalities for the period 1992-2010. “Contact with Wiring, Transformers,or Other Electrical Components” (most common for workers who install,repair, or maintain electrical systems and apparatus in the normalcourse of their electrical work) was the second-largest fatal injurycategory with 27% of all fatalities, followed by “Contact with ElectricCurrent of Machine, Tool, Appliance, or Light Fixture” (most common forworkers who use electrical tools and apparatus in the normal course oftheir non-electrical work) with 17%.

Five occupational groups account for nearly 80% of all fatal electricalaccidents. “Construction Trades Workers” represent about 38% of allelectrical fatalities. Other occupational groups with high numbers ofelectrical fatalities are “Installation, Maintenance, and RepairOccupations” (21%), “Other Management Occupations” (4%), and“Agricultural Workers” (2%). The Construction industry experienced 52%of total electrical fatalities.

SUMMARY

Embodiments of the present invention disclose a personal mobile systemfor detecting unsafe electrical power levels. One or more computerprocessors are operatively coupled to one or more computer-readablestorage media, a magnetic sensor, a GPS module, a wireless networkinterface, and an alert module. Electrical power level thresholds andlocations of power lines are stored on the one or more computer-readablestorage media. The magnetic sensor is operated to detect a magnitude ofa magnetic field produced by a power line. The GPS is operated todetermine the location at which the magnetic sensor detected themagnetic field produced by the power line. The one or more processorsare operated to determine a distance from the determined location atwhich the magnetic sensor detected the magnetic field produced by thepower line and the power line. The one or more processors are furtheroperated to determine if the magnitude of the detected magnetic fieldproduced by the power line exceeds the stored electrical power levelthreshold, based on the determined distance from the location at whichthe magnetic sensor detected the magnetic field produced by the powerline and the power line. In response to the one or more processorsdetermining that the magnitude of the detected magnetic field producedby the power line exceeds the stored electrical power level threshold,the one or more processors cause the alert module to produce an alert onthe personal mobile system.

BRIEF DESCRIPTION OF THE DRAWINGS

The following detailed description, given by way of example and notintended to limit the invention solely thereto, will best be appreciatedin conjunction with the accompanying drawings, in which:

FIG. 1 is a functional block diagram illustrating a computer networkenvironment, according to an exemplary embodiment;

FIG. 2 is an exemplary work space for an electrical worker, according toan exemplary embodiment;

FIG. 3 is an alert determination flowchart depicting the operationalsteps of a detection program, according to an exemplary embodiment;

FIG. 4 is a block diagram of components of a server or computing deviceexecuting the detection program, according to an exemplary embodiment;

FIG. 5 depicts a cloud computing environment, according to an exemplaryembodiment;

FIG. 6 depicts abstract model layers of a cloud computing environment,according to an exemplary embodiment.

The drawings are not necessarily to scale. The drawings are merelyschematic representations, not intended to portray specific parametersof the invention. The drawings are intended to depict only typicalembodiments of the invention. In the drawings, like numbering representslike elements.

DETAILED DESCRIPTION

Detailed embodiments of the claimed structures and methods are disclosedherein; however, it can be understood that the disclosed embodiments aremerely illustrative of the claimed structures and methods that may beembodied in various forms. This invention may, however, be embodied inmany different forms and should not be construed as limited to theexemplary embodiments set forth herein. In the description, details ofwell-known features and techniques to those skilled in the art may beomitted to avoid unnecessarily obscuring the presented embodiments.

References in the specification to “one embodiment”, “an embodiment”,“an exemplary embodiment”, etc., indicate that the embodiment describedmay include a particular feature, structure, or characteristic, butevery embodiment may not necessarily include the particular feature,structure, or characteristic. Moreover, such phrases are not necessarilyreferring to the same embodiment. Further, when a particular feature,structure, or characteristic is described in connection with anembodiment, it is submitted that it is within the knowledge of oneskilled in the art to affect such feature, structure, or characteristicin connection with other embodiments whether or not explicitlydescribed.

The present invention relates generally to the field of electricalmeasurements, and more particularly to the measurement of electrical andmagnetic fields (also referred to as “electrical power levels”) fromnearby electrical lines using sensors on a personal computing device.Typically, an electrical worker can use stand-alone devices such as, forexample, fluorescent electrical field detectors, contact voltagedetectors, or hall-effect sensors to measure nearby electrical powerlevels. Typically, electrical workers need to manually use thestand-alone devices to measure nearby electrical power levels (i.e., thestand-alone devices need to receive a user input to collect electricaldata). It would be advantageous for an electrical worker to beautomatically notified of nearby power levels without the need tomanually interact with an electrical measurement device. Furthermore, ifthe electrical worker is close to, or working directly with, electricalpower lines outside of his or her certification level, a supervisorwould be automatically notified of the situation. One way to detectelectrical power levels and to alert the appropriate parties is toutilize one or more sensors on personal computing devices (e.g.,smartphones) carried by the electrical worker. The term “electricalworker” as used herein, may refer to any person working directly with,or near to, power lines and is not limited to professional electricalworkers (i.e., electricians).

FIG. 1 is a functional block diagram of an electrical power leveldetection environment 100, according to an embodiment of the invention.The electrical power level detection environment 100 includes server120, computing device 102, and computing device 130 connected vianetwork 110.

Network 110 can be, for example, a local area network (LAN), a wide areanetwork (WAN) such as the Internet, or a combination of the two, and caninclude wired, wireless, or fiber optic connections. In general, network110 can be any combination of connections and protocols that willsupport communications between server 120 and computing devices 102 and130, in accordance with an embodiment of the invention.

Server 120 may be a mainframe server computer system such as amanagement server, a web server, or a computing device such as a laptopcomputer, tablet computer, netbook computer, personal computer (PC), adesktop computer, a personal digital assistant (PDA), a smartphone, aSMS capable phone, or any programmable electronic device capable ofcommunicating with computing devices 102 and 130 via network 110, inaccordance with one or more embodiments of the invention. Server 120 canalso represent a “cloud” of computers interconnected by one or morenetworks, where server 120 may be a primary server for a computingsystem utilizing clustered computers when accessed through network 110.

In an embodiment, server 120 includes detection program 122, which is acollection of machine readable instructions and data that is used toreceive, analyze, and send alerts regarding electrical power levels neara computing device carried by an electrical worker (and by extension,electrical power levels near the electrical worker). Detection program122 can use a comparison module 126 and a threshold module 124 todetermine a type of work zone that the electrical worker is working inby receiving electrical data from the computing device carried by theelectrical worker and comparing the electrical data to threshold levels.Detection program 122 can use response module 128 to alert appropriateparties (e.g., the electrical worker or a supervisor) of the type ofwork zone by sending alerts to one or more computing devices carried bythe appropriate parties.

Threshold module 124 is a collection of machine readable instructionsand data that is used to receive or generate one or more thresholdlevels, in accordance with one or more embodiments of the invention. Thethreshold levels may be user defined, preset, or generated by thresholdmodule 124. For example, if a supervisor has three classes of electricalworkers working under him or her, the supervisor can set three thresholdlevels including: safe for all electrical workers, safe for certifiedelectrical workers, and hazardous for all workers. In an alternativeembodiment, the threshold levels can be received or generated bythreshold module 124 by retrieving safety information from onlinesources such as OSHA or the Department of Labor. The threshold levelsmay represent electrical power levels or a range of electrical powerlevels, such as, for example, electrical current or voltage levels.

Comparison module 126 is a collection of machine readable instructionsand data that is used to receive electrical power level data from acomputing device carried by an electrical worker and to compare theelectrical data to the threshold levels set by threshold module 124, inaccordance with one or more embodiments of the invention. Comparisonmodule 126 can receive and analyze the electrical power level data inreal-time (i.e., continuously receiving and immediately comparingelectrical power level data to threshold levels). The electrical powerlevel data may include information gathered by the computing deviceregarding nearby and surrounding electrical power levels measured usingsensors on the computing device.

For example, an electrical worker may be in a structure with low powerlevels, while high-voltage power lines may be 200 yards away from thestructure. In this example, the electrical power level data collected bythe sensors of the computing device carried by the electrical worker mayinclude information regarding the low power levels of the structure aswell as the distance and power levels of the high-voltage power lines.Comparison module 126 can compare the received power level data to thethreshold levels, where, for example, the low power levels may fall in asafe work zone threshold level and the high-voltage power lines may fallin a hazardous work zone threshold level.

In some situations the threshold levels may be dependent on theclassification of the electrical worker, for example, where a supervisorsets three classification levels for electrical workers. Comparisonmodule 126 can determine which threshold level(s) should be used forcomparison by determining the classification of the electrical workervia the computing device transmitting the electrical power level data.Comparison module 126 can determine the classification of the computingdevice (i.e., the electrical worker in possession of the computingdevice) by matching an IP address of the transmitting computing deviceto an assigned classification for that IP address. Another possibleclassification determination may be by way of the electrical workerinputting his or her credentials into the transmitting computing device.

After the electrical power level data is compared, comparison module 126can send compared data to response module 128 for a determination ofwhether or not to send an alert to the appropriate parties. The compareddata may include the electrical power level data and applicablethreshold levels.

Response module 128 is a collection of machine readable instructions anddata that is used to receive and analyze the compared data fromcomparison module 126 to determine whether or not to alert theappropriate parties, in accordance with one or more embodiments of theinvention. Response module 128 can alert the appreciate parties bysending the alert to one or more computing devices carried by theappropriate parties. The determination of whether or not to send analert can be based on meeting alert criteria. The alert criteria can bebased on, for example, threshold levels, user defined criteria, orpredetermined criteria. In another embodiment, an alert may be sentregardless of the type of electrical power level data or compared data,such that the alert is used as a real-time update of working conditions.

For example, an alert may be sent to the appropriate parties to confirman electrical worker is in a safe zone and/or to alert the appropriateparties of the proximity to a hazardous zone. The appropriate partiesmay include, for example, an electrical worker in possession ofcomputing device 102 having collection module 104, sensor(s) 106, andclient alert module 108 and a supervisor in possession of computingdevice 130 having third-party alert module 138. In an embodiment,computing devices 102 and 130 may be smartphones, personal digitalassistants (PDA's), SMS capable phones, laptop computers, tabletcomputers, or any programmable electronic devices capable ofcommunicating with server 120 via network 110. In an embodiment wherecomputing device 102 is the computing device measuring the electricalpower levels, computing device 102 has at least sensor(s) 106.

Collection module 104 may be a collection of machine readableinstructions and data that is used to collect electrical power leveldata using sensor(s) 106. The electrical power level data may includeelectrical power levels emitted by power lines or any other electricalcomponents near computing device 102 as detected by sensor(s) 106.Collection module 104 can send the collected electrical power level datato comparison module 126 for analysis, as discussed above.

In an embodiment, computing device 102 is a smartphone having sensor(s)106 including factory installed sensors, such as a magnetic sensor, GPS,accelerometer, and/or gyroscope. Each sensor provided with computingdevice 102 may provide improvements in power level measurements ordetection sensitivity.

For example, a magnetic sensor can determine the presence and strengthof a magnetic field created by a power line. The magnetic sensor mayutilize solid state technology to create a miniature Hall-effect sensorthat detects the Earth's magnetic field in three-dimensions. TheHall-effect sensor produces voltage which is proportional to thestrength and polarity of the magnetic field along the axis in which eachsensor is oriented. The sensed Hall-effect voltage is converted to adigital signal representing the magnetic field intensity. The magneticfield intensity can then be compared to magnetic fields of nearby powerlines detected by the magnetic sensor. Other technologies used formagnetometer may include magneto resistive devices which change themeasured resistance based on changes in the magnetic field. The magneticsensor can also detect relative orientation of the smartphone relativeto the Earth's magnetic north.

A GPS can determine the location of computing device 102 when anelectrical power level is detected by the magnetic sensor usinggeographical location information received from GPS satellites. The GPSlocation can aid collection module 104 in further defining distances toknown power levels (e.g., high voltage power lines having a set GPSlocation). Additionally, the GPS can aid collection module 104 indetermining a change in location as computing device 102 is moving fromone location to another.

An accelerometer and gyroscope can improve sensitivity as computingdevice 102 moves throughout a workspace. An accelerometer can measureproper acceleration (i.e., g-force) or coordinate acceleration (i.e.,rate of change in velocity). An accelerometer can be used as a pedometerto measure distance walked by an electrical worker by detecting themotion of the workers hands or hips. Additionally, an accelerometer canhelp correct raw magnetic measurements collected by a magnetic sensor bycomparing device tilt information to the changing Earth's magnetic fieldrelative to each axis of the three-dimensional mapping. A gyroscope is aspinning wheel or disc where the axis of rotation is free to assume anyorientation by itself. When rotating the computing device having thegyroscope, the orientation of this axis is unaffected by tilting orrotation of the computing device. In some cases, an accelerometer can bepaired with a gyroscope to create, for example, a 6-axis motion sensingcapability (e.g., in 4^(th) generation apple® devices).

As discussed above, the electrical power level data collected bycollection module 104 may be sent to comparison module 126 to generatecompared data, which is then sent to response module 128 to alert theappropriate parties of current working conditions near the electricalworker based on the alert criteria. Response module 128 can send thealert(s) to client alert module 108 and/or third-party alert module 138.When an alert is received by client alert module 108 or third-partyalert module 138, the computing device users (e.g., electrical workerand supervisor, respectively) can be notified, for example, by way of aringing or vibration function. The type of notification can be definedby the type of notification functions on computing devices 102 and 130and the nature of the alert sent by response module 128. For example, asingle vibration may be used to alert the appropriate parties that theelectrical worker is in a safe zone but that a hazardous zone is nearby.Alternatively, a constant vibration may be used to alert the appropriateparties that the electrical worker is in a hazardous work zone.

It should be noted, detection program 122 and each of the modulesdescribed above may be located on server 120, computing devices 102 and130, or on any other device capable of communication via network 110.Additionally, server 120 and computing devices 102 and 130 may includeinternal and external hardware components, as described in reference toFIG. 4.

FIG. 2 is an exemplary work space 200 for an electrical worker,according to an embodiment. For example, the electrical worker may becarrying computing device 102 having sensor(s) 106, described above inreference to FIG. 1. As the electrical worker (i.e., computing device102) enters work space 200, computing device 102 can collect electricalpower level data of the work space 200 using sensor(s) 106 and can sendthe electrical power level data to comparison module 126. In theillustrated embodiment, three threshold levels may be set by thresholdmodule 124 including safe zone 204, certification zone 206 defined bypower line 207, and hazardous zone 208 defined by power line 209.Sensor(s) 106 on computing device 102 can collect the electrical powerlevel data including the distance to the certification zone (cd) and thedistance to the hazardous zone (hd). As the electrical worker movesthrough work space 200, the sensor(s) 106 of computing device 102 cansend updates to comparison module 126 to keep track of the real-timeworking conditions and location.

In some situations, power lines or devices may not be on at the time ofdata collection by collection module 104, however, comparison module 126may also set potential threshold zones. For example, if power line 209is currently off, comparison module 126 may receive informationidentifying the location of power line 209 (e.g., via GPS locations ofknown power lines) and may create a potential hazardous zone mirroringhazardous zone 208. Response module 128 can treat potential work zonesthe same as live work zones (e.g., hazardous zone 208) when determiningwhether or not to send alerts. Alternatively, response module 128 canalert the appropriate parties in a way to convey the presence of apotential work zone rather than a live work zone.

FIG. 3 is an alert determination flowchart 300 depicting operationssteps of detection program 122, according to an exemplary embodiment.Threshold module 124 determines the number and value of a thresholdlevel(s) (Step 302). Comparison module 126 receives electrical powerlevel data including power levels near an electrical worker (via acomputing device having sensor(s) carried by the electrical worker)(Step 304). Comparison module 126 compares the electrical power leveldata to the threshold levels and generates compared data (Step 306).Response module 128 determines whether the compared data satisfies alertcriteria (Step 307). If the alert criteria is not satisfied, steps 304,306, and 307 may be performed again when more electrical power leveldata is received (e.g., real-time data updates). If the alert criteriaare satisfied, response module 128 alerts the appropriate parties (Step308).

FIG. 4 is a block diagram of components of the server 120 and/orcomputing device 102 and 130, in accordance with an illustrativeembodiment of the present invention.

Server 120 may include one or more processors 402, one or morecomputer-readable RAMs 404, one or more computer-readable ROMs 406, oneor more computer readable storage media 408, device drivers 412,read/write drive or interface 414, network adapter or interface 416, allinterconnected over a communications fabric 418. Communications fabric418 may be implemented with any architecture designed for passing dataand/or control information between processors (such as microprocessors,communications and network processors, etc.), system memory, peripheraldevices, and any other hardware components within a system.

One or more operating systems 410, and one or more application programs411, for example, determination program 122 described in reference toFIG. 1, are stored on one or more of the computer readable storage media408 for execution by one or more of the processors 402 via one or moreof the respective RAMs 404 (which typically include cache memory). Inthe illustrated embodiment, each of the computer readable storage media408 may be a magnetic disk storage device of an internal hard drive,CD-ROM, DVD, memory stick, magnetic tape, magnetic disk, optical disk, asemiconductor storage device such as RAM, ROM, EPROM, flash memory orany other computer-readable tangible storage device that can store acomputer program and digital information.

Server 120 may also include a R/W drive or interface 414 to read fromand write to one or more portable computer readable storage media 426.Application programs 411 on server 120 may be stored on one or more ofthe portable computer readable storage media 426, read via therespective R/W drive or interface 414 and loaded into the respectivecomputer readable storage media 408.

Server 120 may also include a network adapter or interface 416, such asa TCP/IP adapter card or wireless communication adapter (such as a 4Gwireless communication adapter using OFDMA technology). Applicationprograms 411 on server 120 may be downloaded to the computing devicefrom an external computer or external storage device via a network (forexample, the Internet, a local area network or other wide area networkor wireless network) and network adapter or interface 416. From thenetwork adapter or interface 416, the programs may be loaded ontocomputer readable storage media 408. The network may comprise copperwires, optical fibers, wireless transmission, routers, firewalls,switches, gateway computers and/or edge servers.

Server 120 may also include a display screen 420, a keyboard or keypad422, and a computer mouse or touchpad 424. Device drivers 412 interfaceto display screen 420 for imaging, to keyboard or keypad 422, tocomputer mouse or touchpad 424, and/or to display screen 420 forpressure sensing of alphanumeric character entry and user selections.The device drivers 412, R/W drive or interface 414 and network adapteror interface 416 may comprise hardware and software (stored on computerreadable storage media 408 and/or ROM 406).

The present invention may be a system, a method, and/or a computerprogram product at any possible technical detail level of integration.The computer program product may include a computer readable storagemedium (or media) having computer readable program instructions thereonfor causing a processor to carry out aspects of the present invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, configuration data for integrated circuitry, oreither source code or object code written in any combination of one ormore programming languages, including an object oriented programminglanguage such as Smalltalk, C++, or the like, and procedural programminglanguages, such as the “C” programming language or similar programminglanguages. The computer readable program instructions may executeentirely on the user's computer, partly on the user's computer, as astand-alone software package, partly on the user's computer and partlyon a remote computer or entirely on the remote computer or server. Inthe latter scenario, the remote computer may be connected to the user'scomputer through any type of network, including a local area network(LAN) or a wide area network (WAN), or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider). In some embodiments, electronic circuitry including,for example, programmable logic circuitry, field-programmable gatearrays (FPGA), or programmable logic arrays (PLA) may execute thecomputer readable program instructions by utilizing state information ofthe computer readable program instructions to personalize the electroniccircuitry, in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the blocks may occur out of theorder noted in the Figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

It is understood in advance that although this disclosure includes adetailed description on cloud computing, implementation of the teachingsrecited herein are not limited to a cloud computing environment. Rather,embodiments of the present invention are capable of being implemented inconjunction with any other type of computing environment now known orlater developed.

Cloud computing is a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g. networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service. This cloud model may includeat least five characteristics, at least three service models, and atleast four deployment models.

Characteristics are as follows:

On-demand self-service: a cloud consumer can unilaterally provisioncomputing capabilities, such as server time and network storage, asneeded automatically without requiring human interaction with theservice's provider.

Broad network access: capabilities are available over a network andaccessed through standard mechanisms that promote use by heterogeneousthin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling: the provider's computing resources are pooled to servemultiple consumers using a multi-tenant model, with different physicaland virtual resources dynamically assigned and reassigned according todemand. There is a sense of location independence in that the consumergenerally has no control or knowledge over the exact location of theprovided resources but may be able to specify location at a higher levelof abstraction (e.g., country, state, or datacenter).

Rapid elasticity: capabilities can be rapidly and elasticallyprovisioned, in some cases automatically, to quickly scale out andrapidly released to quickly scale in. To the consumer, the capabilitiesavailable for provisioning often appear to be unlimited and can bepurchased in any quantity at any time.

Measured service: cloud systems automatically control and optimizeresource use by leveraging a metering capability at some level ofabstraction appropriate to the type of service (e.g., storage,processing, bandwidth, and active user accounts). Resource usage can bemonitored, controlled, and reported providing transparency for both theprovider and consumer of the utilized service.

Service Models are as follows:

Software as a Service (SaaS): the capability provided to the consumer isto use the provider's applications running on a cloud infrastructure.The applications are accessible from various client devices through athin client interface such as a web browser (e.g., web-based e-mail).The consumer does not manage or control the underlying cloudinfrastructure including network, servers, operating systems, storage,or even individual application capabilities, with the possible exceptionof limited user-specific application configuration settings.

Platform as a Service (PaaS): the capability provided to the consumer isto deploy onto the cloud infrastructure consumer-created or acquiredapplications created using programming languages and tools supported bythe provider. The consumer does not manage or control the underlyingcloud infrastructure including networks, servers, operating systems, orstorage, but has control over the deployed applications and possiblyapplication hosting environment configurations.

Infrastructure as a Service (IaaS): the capability provided to theconsumer is to provision processing, storage, networks, and otherfundamental computing resources where the consumer is able to deploy andrun arbitrary software, which can include operating systems andapplications. The consumer does not manage or control the underlyingcloud infrastructure but has control over operating systems, storage,deployed applications, and possibly limited control of select networkingcomponents (e.g., host firewalls).

Deployment Models are as follows:

Private cloud: the cloud infrastructure is operated solely for anorganization. It may be managed by the organization or a third party andmay exist on-premises or off-premises.

Community cloud: the cloud infrastructure is shared by severalorganizations and supports a specific community that has shared concerns(e.g., mission, security requirements, policy, and complianceconsiderations). It may be managed by the organizations or a third partyand may exist on-premises or off-premises.

Public cloud: the cloud infrastructure is made available to the generalpublic or a large industry group and is owned by an organization sellingcloud services.

Hybrid cloud: the cloud infrastructure is a composition of two or moreclouds (private, community, or public) that remain unique entities butare bound together by standardized or proprietary technology thatenables data and application portability (e.g., cloud bursting forload-balancing between clouds).

A cloud computing environment is service oriented with a focus onstatelessness, low coupling, modularity, and semantic interoperability.At the heart of cloud computing is an infrastructure comprising anetwork of interconnected nodes.

Referring now to FIG. 5, an illustration of a cloud computingenvironment 500 is depicted, according to an exemplary embodiment. Thecloud computing environment 500 can include one or more cloud computingnodes 510 with which local computing devices used by cloud consumers,such as, for example, personal digital assistant (PDA) or cellulartelephone 540A, desktop computer 540B, and/or laptop computer 540C maycommunicate. The nodes may be grouped (not shown) physically orvirtually, in one or more networks, such as Private, Community, Public,or Hybrid clouds as described hereinabove, or a combination thereof.This allows the cloud computing environment to offer infrastructure,platforms and/or software as services for which a cloud consumer doesnot need to maintain resources on a local computing device. It isunderstood that the types of computing devices 540A-C are intended to beillustrative only and that computing nodes and the cloud computingenvironment can communicate with any type of computerized device overany type of network and/or network addressable connection (e.g., using aweb browser).

Referring now to FIG. 6, a set of functional abstraction layers providedby cloud computing environment 500 (FIG. 5) is shown. It should beunderstood in advance that the components, layers, and functions shownin FIG. 6 are intended to be illustrative only and embodiments of theinvention are not limited thereto. As depicted, the following layers andcorresponding functions are provided:

Hardware and software layer 600 includes hardware and softwarecomponents. Examples of hardware components include: mainframes 601;RISC (Reduced Instruction Set Computer) architecture based servers 602;servers 603; blade servers 604; storage devices 605; and networks andnetworking components 606. In some embodiments, software componentsinclude network application server software 607 and database software608.

Virtualization layer 670 provides an abstraction layer from which thefollowing examples of virtual entities may be provided: virtual servers671; virtual storage 672; virtual networks 673, including virtualprivate networks; virtual applications and operating systems 674; andvirtual clients 675.

In one example, management layer 680 may provide the functions describedbelow. Resource provisioning 681 provides dynamic procurement ofcomputing resources and other resources that are utilized to performtasks within the cloud computing environment. Metering and Pricing 682provide cost tracking as resources are utilized within the cloudcomputing environment, and billing or invoicing for consumption of theseresources. In one example, these resources may comprise applicationsoftware licenses. Security provides identity verification for cloudconsumers and tasks, as well as protection for data and other resources.User portal 683 provides access to the cloud computing environment forconsumers and system administrators. Service level management 684provides cloud computing resource allocation and management such thatrequired service levels are met. Service Level Agreement (SLA) planningand fulfillment 685 provide pre-arrangement for, and procurement of,cloud computing resources for which a future requirement is anticipatedin accordance with an SLA.

Workloads layer 690 provides examples of functionality for which thecloud computing environment may be utilized. Examples of workloads andfunctions which may be provided from this layer include: mapping andnavigation 691; software development and lifecycle management 692;virtual classroom education delivery 693; data analytics processing 694;transaction processing 695; and targeted recommendation processing 696(e.g., determination program 122).

Based on the foregoing, a computer system, method, and computer programproduct have been disclosed. However, numerous modifications andsubstitutions can be made without deviating from the scope of thepresent invention. Therefore, the present invention has been disclosedby way of example and not limitation.

What is claimed is:
 1. A computer program product for detecting unsafeelectrical power levels by a personal mobile device, the computerprogram product comprising a non-transitory computer readable storagemedium having program instructions embodied thereon, wherein the programinstructions, when executed by one or more processors of the personalmobile device, cause the personal mobile device to perform a methodcomprising: detecting, by a magnetic sensor of the personal mobiledevice, a magnitude of a magnetic field produced by a power line;determining, by a GPS module of the personal mobile device, a locationat which the magnetic sensor is detecting the magnetic field produced bythe power line; receiving, by the one or more processors of the personalmobile system, inputted information from an electrical worker operatingthe personal mobile device, indicating a classification level of theelectrical worker; determining, by the one or more processors, adistance from the determined location at which the magnetic sensor isdetecting the magnetic field produced by the power line and the powerline; determining, by the one or more processors, if the magnitude ofthe detected magnetic field produced by the power line exceeds apredefined electrical power level threshold, stored on one or morecomputer-readable storage media of the personal mobile device, that isassociated with the inputted electrical worker classification level,based on the determined distance from the location at which the magneticsensor detected the magnetic field produced by the power line and thepower line; in response to determining, by the one or more processors,that the that the magnitude of the detected magnetic field produced bythe power line exceeds the predetermined electrical power levelthreshold that is associated with the inputted electrical workerclassification level, the one or more processors causing an alert moduleof the personal mobile system to produce an alert on the personal mobilesystem.